home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / lang / c++-part2 / 13016 < prev    next >
Encoding:
Internet Message Format  |  1996-08-05  |  5.4 KB

  1. Path: aadt.sdt.com!usenet
  2. From: david_hooker@sdt.com
  3. Newsgroups: comp.lang.c++,comp.programming
  4. Subject: Overnight Programmers (was 'Young programmers read me')
  5. Date: 22 Mar 1996 20:15:02 GMT
  6. Organization: SABRE Decision Technologies
  7. Message-ID: <4iv1o6$22j@aadt.sdt.com>
  8. References: <4icpp9$7hr@barad-dur.nas.com> <4imqe4$cj3@ping1.ping.be> <4isq0a$5gr@scoop.eco.twg.com>
  9. Reply-To: david_hooker@sdt.com
  10. NNTP-Posting-Host: lw_hooker.sdt.com
  11. X-Newsreader: IBM NewsReader/2 v1.02
  12.  
  13. In <4isq0a$5gr@scoop.eco.twg.com>, mike@vishnu.eco.twg.com (This space intentionally left blank) writes:
  14. >In article <4iq5rv$aph@aadt>, david_hooker@sdt.com writes:
  15. >>In <4ippuq$4pk@scoop.eco.twg.com>, mike@vishnu.eco.twg.com (This space intentionally left blank) writes:
  16. >>
  17. >>>Sure, it's less flamboyant and "macho" to just engineer good software, code
  18. >>>it and have it work and be simple to maintain, but the old days of "it was
  19. >>>hard to write, it should be hard to modify" and 18-24 hour "crunch" days at
  20. >>>the end of the project when you have "just one more bug...or maybe two..."
  21. >>>need to be over.  Customers don't like having to use support lines to get
  22. >>>problems fixed any more than companies like to pay to provide them.
  23. >>
  24. >>Actually, around here the "macho" programmers are those that do it right the
  25. >>_first_ time!!  Our "falmboyant" programmers get complex pieces of code
  26. >>done _right_, and get it done _on_time_ or even (drumroll...) early!!
  27. >
  28. >Good for you.  This does not appear to be the norm in the industry.  Why not?
  29. >
  30.  
  31. I dunno.  I once read that the programming profession is just like any other
  32. in that there is a bell-curve of talent: a few really good programmers, a _bunch_
  33. of average programmers, and a few really bad programmers.  I think, however, that
  34. due to the ability for almost anyone to become an "overnight programmer" via
  35. products like VB, VC++, Powerbuilder, Delphi, etc... has shifted this
  36. curve to become more heavily weighted towards more of the less-talented
  37. in our field.  Our group (and I think most of the industrial-strength
  38. software shops) hire from the "really good" pool.
  39.  
  40. >>Someone who needs a buttload of time to write something is either a beginner,
  41. >>an amateur, or a below-average performer --- definately not "macho".  And we
  42. >>use C++ (our system has 700,000 - 1,000,000 LOC).
  43. >
  44. >Or is working on a less-than well-defined problem, or is trying to hit a
  45. >moving target, or was lied to about the environment, or was given a target
  46. >date half as far in the future as the best estimate of the time required, or
  47. >didn't get the resources the estimate was based on, or a host of other
  48. >things I've seen repeatedly at a number of different companies.
  49.  
  50. You are absolutely right of course.  However, good project/product management
  51. helps alieviate these to a large degree.  In _industry_, you need both good
  52. programmers and good management.  The bonus is when you can roll both into 
  53. one person!
  54.  
  55. >This sounds a lot like the "macho" attitude I mentioned.  "*We* can put out
  56. >buku piles of code with anything!  Who needs tools that help?!?  Sissies!!"
  57. >
  58.  
  59. Oh, I'm all for tools... if the programmer knows how to use them properly, and
  60. doesn't actually become a "tool of the tool" instead.
  61.  
  62. >>>If you don't agree, check out any of the Corel newsgroups and see how thier
  63. >>>...
  64. >>Sound's like a either bad programmers, or just a bad attitude.
  65. >
  66. >Or an unreasonable/shortsighted management, or a flakey environment (MS Windows
  67. >3.1) combined with a language that makes it easy to code errors, and even
  68. >encourages poor practices.
  69.  
  70. I'll agree on the management point.  The environment point... sometimes.  I
  71. firmly believe that a talented programmer can make a computer do almost anything.
  72. However, the language point - I don't see how C++ encourages anything except
  73. diligence and dicipline from programmers using it.
  74.  
  75. >>Writing well-engineered software in C++ (probably) does take more dicipline
  76. >>than several other languages.  And I personally would prefer a well-
  77. >>diciplined programmer (in any language) over one that's not.  
  78. >
  79. >I can't argue with this at all.
  80. >
  81. >>In my opinion,
  82. >>it's the programmer, not the language, that makes or breaks the code.
  83. >
  84. >Yes, but the ease with which a programer of any skill level can acomplish a
  85. >given task is dependent on the tools used.  The better the tools the better
  86. >the result for a given programmer (better programmers will still beat poorer
  87. >programmers on speed, quality, maintainability, etc.).  Michaelangelo did
  88. >wonderous things with a wooden mallet and some primitive steel chisels. 
  89. >Just think what his output could have been with an air compressor, airhammer
  90. >and some modern steel tools!  Less time and attention spent aiming and
  91. >swinging the mallet and more time spent thinking about where and what to cut...
  92. >
  93.  
  94. Notice that there isn't a "Sculpture Wizard" tool for artists! 8-)
  95.  
  96. I, of course, enjoy having the best tools for the job.  I would not balk at
  97. using Delphi to put together certain applications, or Smalltalk, or even
  98. pure assembly!  My gripe is those "programmers" that think just because they
  99. can write basic C++, use VC++ (or BC++, I'm not partisan) and throw together
  100. a simple application, that they are worthy of the title "Software Engineer" or
  101. "Programmer/Analyst" or whatever.
  102.  
  103. Some memorable answers that an interviewee gave:
  104.  
  105. Q: What is a template function?
  106. A: The shell code that Visual C++ generates for a method.
  107.  
  108. Q: What is your favorite feature of C++?
  109. A: CFrameWindow
  110.  
  111. Q: What part of C++ do you have trouble with?
  112. A: OLE.
  113.  
  114. >8-(
  115.  
  116. -dave-
  117.  
  118.  
  119.  
  120.